home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
SGI Developer Toolbox 6.1
/
SGI Developer Toolbox 6.1 - Disc 4.iso
/
documents
/
OpenGL
/
README
< prev
next >
Wrap
Text File
|
1994-08-01
|
14KB
|
272 lines
~4Dgifts/toolbox/documents/OpenGL README
`!' indicates new or updated as of version 4.2
Contents:
! opengl.ps: "The Design of the OpenGL Graphics Interface"
ABSTRACT: OpenGL is an emerging graphics standard that provides
advanced rendering features while maintaining a simple programming
model. Because OpenGL is rendering-only, it can be incorporated into
any window system (and has been, into the X Window System and a soon-to-
be-released version of Windows) or can be used without a window system.
An OpenGL implementation can efficiently accommodate almost any level of
graphics hardware, from a basic framebuffer to the most sophisticated
graphics subsystems. It is therefore a good choice for use in
interactive 3D and 2D graphics applications.
We describe how these and other considerations have governed the
selection and presentation of graphical operators in OpenGL. Complex
operations have been eschewed in favor of simple, direct control over
the fundamental operations of 3D and 2D graphics. Higher-level
graphical functions may, however, be built from OpenGL's low-level
operators, as the operators have been designed with such layering in
mind.
-----------------------------------------------------------------------------
OpenGLtutorial: this directory contains files of the tutorial notes for
the "OpenGL and X" tutorial presented as the 8th Annual
X Technical Conference in Boston, on January 24, 1994:
woo.ps Mason Woo's presentation introducing OpenGL and its
functionality (49 pages).
mjk.showcase Mark Kilgard's presentation on how OpenGL integrates with
the X Window System (53 pages).
segal.ps Mark Segal and Kurt Akeley's paper describing the "The
OpenGL Graphics Interface" (21 pages).
-----------------------------------------------------------------------------
analysisPEX: Analysis of PEX 5.1 and OpenGL 1.0
PEX and OpenGL are two 3D graphics systems contending for the position
of de facto standard in the workstation market. While they are similar
in many ways, they also differ in important aspects of their
application programming interfaces, functionality, performance,
portability, openness, and responsiveness to changes in markets and in
technology.
To our knowledge, no detailed comparisons of PEX and OpenGL have been
published. Perhaps this is because the two systems are evolving and few
individuals have experience with both. With the release of PEX 5.1 and
OpenGL 1.0, we believe the systems are relatively stable and it is now
time to undertake a comparison.
This paper analyzes some of the significant differences between PEX and
OpenGL, with attention to issues faced by users as well as
implementors. We hope it will be a positive contribution to the
debate.
-----------------------------------------------------------------------------
irixgl2opengl.ascii: a list mapping IrisGL commands to similar OpenGL
commands.
Note in many cases the OpenGL commands listed function somewhat
differently from the IrisGL commands, and the format of the parameters
may be different as well. See the OpenGL man pages for detailed
descriptions of the functions of the these commands and the parameters
they take.
-----------------------------------------------------------------------------
irisgl2opengl.ps: PostScript version of the list mapping IrisGL commands
to similar OpenGL commands--expanded contents
Similar to the irisgl2opengl ascii text file, this file also includes
a "Where Discussed" column for each command. This is Appendix A of
"The OpenGL Porting Guide" Iris Insight Help book.
-----------------------------------------------------------------------------
intro.ps: "OpenGL(tm) and X, Part 1: An Introduction", Mark Kilgard,
"The X Journal", November/December, 1993.
The OpenGL graphics system is a high-performance, window system
independent 2D and 3D graphics interface. The technology was developed
by Silicon Graphics and is now controlled by the OpenGL Architecture
Review Board. OpenGL's GLX extension integrates OpenGL with the X
Window System. This article describes OpenGL's functionality and how
it is used with X. A simple OpenGL program using Xlib is presented.
OpenGL is compared and contrasted with PEX, a 3D graphics interface
designed specifically for X. The two subsequent articles in this
series describe how to integrate OpenGL with Xlib and Motif programs.
-----------------------------------------------------------------------------
xlib.ps: "OpenGL(tm) and X, Part 2: Using OpenGL with Xlib", Mark
Kilgard, "The X Journal", January/February, 1994.
This is the second article in a three-part series about using the
OpenGL(tm) graphics system and the X Window System. A moderately
complex OpenGL program for X is presented. Depth Buffering, back-face
culling, lighting, display list modeling, polygon tessellation, double
buffering, and shading are all demonstrated. The program adheres to
proper X conventions for colormap sharing, window manager communication,
command line argument processing, and event processing. After the
example, advanced X and OpenGL issues are discussed including minimizing
colormap flashing, handling overlays, using fonts, and performing
animation. The last article in this series discussess integrating
OpenGL with the Motif toolkit.
-----------------------------------------------------------------------------
motif.ps: "OpenGL(tm) and X, Part 3: Integrating OpenGL with Motif",
Mark Kilgard, "The X Journal", May/June, 1994.
This is the third article in a three-part series about using the
-----------------------------------------------------------------------------
xtech.ps: "X Server Multi-rendering for OpenGL and PEX", presented at the
8th Annual X Technical Conference, Boston, Mass., 1/25/94.
ABSTRACT: To support OpenGL (TM) and PEX rendering within the Silicon
Graphics X server without compromising interactivity, we devised and
implemented a scheme named "multi-rendering". Making minimal changes to
the X Consortium sample server's overall structure, the scheme allows
independent processes within the X server's address space to perform
OpenGL rendering asynchronously to the X server's main thread of
execution. The IRIX operating system's process share group facility,
user-level and pollable semaphores, and support for virtualized direct
access rendering are all leveraged to support multi-rendering. The
Silicon Graphics implementation of PEX also uses the multi-rendering
facility and works by converting rendering requests into OpenGL commands.
Mutli-rendering is contrasted with other schemes for improving server
interactivity. Unlike co-routines, multi-rendering supports multi-
processing; unlike multi-threading, multi-rendering requires minimal
locking overhead.
-----------------------------------------------------------------------------
gluSpec.ps: The OpenGL(TM) Graphics System Utility Library
glxSpec.ps: OpenGL(TM) Graphics with the X Window System(R)
OglSpec.ps: The OpenGL(TM) Graphics System: A Specification (Version 1.0)
Copyright (c) 1992, 1993 Silicon Graphics, Inc. All Rights Reserved.
gluSpec.ps: The OpenGL(TM) Graphics System Utility Library
The GL Utilities (GLU) library is a set of routines designed
to complement the OpenGL(TM) graphics system by providing
support for mipmapping, matrix manipulation, polygon
tessellation, quadrics, NURBS, and error handling. Mipmapping
routines include image scaling and automatic mipmap generation.
A variety of matrix manipulation functions build projection
and viewing matrices, or project vertices from one coordinate
system to another. Polygon tessellation routines convert
concave polygons into triangles for easy rendering. Quadrics
support renders a few basic quadrics such as spheres and cones.
NURBS code maps complicated NURBS curves and trimmed surfaces
into simpler OpenGL evaluators. Lastly, an error lookup
routine translates OpenGL and GLU error codes into strings.
glxSpec.ps: OpenGL(TM) Graphics with the X Window System(R) (Version 1.0)
This document describes GLX, the OpenGL extension to the X
Window System. It refers to concepts discussed in the OpenGL
specification, and may be viewed as an X specific appendix to
that document. Parts of the document assume some
acquaintance with both the OpenGL and X.
In the X Window System, OpenGL rendering is made available as
an extension to X in the formal X sense: connection and
authentication are accomplished with the normal X mechanisms.
As with other X extensions, there is a defined network
protocol for the OpenGL rendering commands encapsulated
within the X byte stream.
Since performance is critical in 3D rendering, there is a
way for OpenGL rendering to bypass the data encoding step,
the data copying, and interpretation of that data by the X
server. This direct rendering is possible only when a
process has direct access to the graphics pipeline.
Allowing for parallel rendering has affected the design of
the GLX interface. This has resulted in an added burden on
the client to explicitly prevent parallel execution when
that is inappropriate.
X and the OpenGL have different conventions for naming entry
points and macros. The GLX extension adopts those of the
OpenGL.
OglSpec.ps: The OpenGL(TM) Graphics System: A Specification (Version 1.0)
This document describes the OpenGL graphics system: what it
is, how it acts, and what is required to implement it. We
assume that the reader has at least a rudimentary
understanding of computer graphics. This means familiarity
with the essentials of computer graphics, algorithms, as well
as familiarity with basic graphics hardware and associated
terms.
These 3 documents first appeared on the OpenGL CD given out at
out at siggraph 1993. From the top-level README of that CD:
The spec directory contains no source code, but it does contain
Release 1.0.10 of the OpenGL Specification, including the OpenGL
Utility Library, and the API for the OpenGL extension to the X Window
System, as released by the OpenGL Architectural Review Board. As of
July, 1993, the OpenGL Architectural Review Board consists of Digital
Equipment, IBM, Intel, Microsoft, and Silicon Graphics.
The OpenGL Specification will enable people to get a more in-depth
understanding of the internals of OpenGL. (For most people, the
Addison-Wesley book series will be enough documentation.) However,
this copy of the Specification is not a license to implement OpenGL
or to use the trademark OpenGL(TM). Contact Mason Woo at Silicon
Graphics, Inc. for more details about licensing.
------------
Copyright (c) 1992, 1993 Silicon Graphics, Inc. All Rights Reserved.
The OpenGL(TM) Specification on this CD-ROM is protected by
International Copyright Law, and is proprietary to Silicon
Graphics, Inc. You may not copy, adapt, distribute, or publicly
perform or display any portion of such material without the
express, prior written consent of Silicon Graphics, Inc. Your
receipt or possession of the OpenGL Specification does not grant
to you or anyone else any right to reproduce, create derivative
works based on or distribute or otherwise disclose any of its
contents, or to manufacture, use or sell anything that embodies
any of the material included herein, in whole or in part,
provided, however, that you may print one interpreted copy of the
PostScript(R) version of the OpenGL Specification provided on
this CD-ROM for your personal reference in connection with your
use of an OpenGL product.
THE MATERIAL EMBODIED ON THIS CD-ROM IS PROVIDED TO YOU "AS-IS"
AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE,
INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR
FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT,
SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY
KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION,
LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF
THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN
ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE
POSSESSION, USE OR PERFORMANCE OF THIS CD-ROM, OR THE MATERIAL
CONTAINED ON THIS CD-ROM.
U. S. Government Restricted Rights Legend
Use, duplication, or disclosure by the Government is subject to
restrictions set forth in FAR 52.227.19(c)(2) or subparagraph
(c)(1)(ii) of the Rights in Technical Data and Computer Software
clause at DFARS 252.227-7013 and/or in similar or successor
clauses in the FAR or the DOD or NASA FAR Supplement.
Unpublished-- rights reserved under the copyright laws of the
United States. Contractor/manufacturer is Silicon Graphics,
Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311.
OpenGL is a trademark of Silicon Graphics, Inc. PostScript is a
registered trademark of Adobe Systems Incorporated.